<?php namespace App\Core\Service\Listeners;

use App\Core\Service\Listener;

abstract class CreateListener extends Listener {
    
    protected $name = 'create';

    //从元数据获取待填充字段前，用于修改原始数据
    public function onCreateGeneratingFeilds(){}
    
    //从元数据获取待填充字段后，用于修改待创建字段列表
    public function onCreateGeneratedFeilds(){}
    
    //数据填充后，用于修改待保存数据
    public function onCreateGeneratedData(){}
    
    //保存数据前，抛出异常"不会"导致数据库事务回滚
    public function onCreateBeforeSave(){}
    
    //保存数据前，抛出异常"直接"导致数据库事务回滚
    public function onCreateSaving(){}
    
    //保存数据后，抛出异常"直接"导致数据库事务回滚
    public function onCreateSaved(){}
    
    //保存数据后，抛出异常"不会"导致数据库事务回滚
    public function onCreateAfterSave(){}
}